package kit.docker.datetime;

/**
 * 日期格式枚举对象
 */
public enum DateStyle {

    YYYYMM("yyyyMM", false),
    YYYYMMDD("yyyyMMdd", false),
    YYYYMMDDHH("yyyyMMddHH", false),
    YYYYMMDDHHMM("yyyyMMddHHmm", false),
    YYYYMMDDHHMMSS("yyyyMMddHHmmss", false),
    YYYYMMDDHHMMSSSSS("yyyyMMddHHmmssSSS", false),

    YYYY_MM("yyyy-MM", false),
    YYYY_MM_DD("yyyy-MM-dd", false),
    YYYY_MM_DD_HH("yyyy-MM-dd HH", false),
    YYYY_MM_DD_HH_MM("yyyy-MM-dd HH:mm", false),
    YYYY_MM_DD_HH_MM_SS("yyyy-MM-dd HH:mm:ss", false),

    YYYY_MM_EN("yyyy/MM", false),
    YYYY_MM_DD_EN("yyyy/MM/dd", false),
    YYYY_MM_DD_HH_EN("yyyy/MM/dd HH", false),
    YYYY_MM_DD_HH_MM_EN("yyyy/MM/dd HH:mm", false),
    YYYY_MM_DD_HH_MM_SS_EN("yyyy/MM/dd HH:mm:ss", false),

    YYYY_MM_CN("yyyy年MM月", false),
    YYYY_MM_DD_CN("yyyy年MM月dd日", false),
    YYYY_MM_DD_HH_CN("yyyy年MM月dd日 HH", false),
    YYYY_MM_DD_HH_MM_CN("yyyy年MM月dd日 HH:mm", false),
    YYYY_MM_DD_HH_MM_SS_CN("yyyy年MM月dd日 HH:mm:ss", false),

    HHMM("HHmm", false),
    HHMMSS("HHmmss", false),

    HH_MM("HH:mm", false),
    HH_MM_SS("HH:mm:ss", false),

    MMDD("MMdd", false),
    MMDDHH("MMddHH", false),
    MMDDHHMM("MMddHHmm", false),
    MMDDHHMMSS("MMddHHmmss", false),

    MM_DD("MM-dd", false),
    MM_DD_HH("MM-dd HH", false),
    MM_DD_HH_MM("MM-dd HH:mm", false),
    MM_DD_HH_MM_SS("MM-dd HH:mm:ss", false),

    MM_DD_EN("MM/dd", false),
    MM_DD_HH_EN("MM/dd HH", false),
    MM_DD_HH_MM_EN("MM/dd HH:mm", false),
    MM_DD_HH_MM_SS_EN("MM/dd HH:mm:ss", false),

    MM_DD_CN("MM月dd日", false),
    MM_DD_HH_CN("MM月dd日 HH", false),
    MM_DD_HH_MM_CN("MM月dd日 HH:mm", false),
    MM_DD_HH_MM_SS_CN("MM月dd日 HH:mm:ss", false);

    private String value;

    private boolean isShowOnly;

    DateStyle(String value, boolean isShowOnly) {
        this.value = value;
        this.isShowOnly = isShowOnly;
    }

    public String getValue() {
        return value;
    }

    public boolean isShowOnly() {
        return isShowOnly;
    }
}
